#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
ボタン設置パッケージ
"""
import context
import wx
import util
import event

"""
ボタンビルダー
"""
class Builder:
    
    """
    イニシャライズ
    """
    def __init__(self):
        self.button = []
        self.count = event.Count()
        
    """
    ボタン構築
    """
    def build(self):
        config = context.Config
        panel = context.UI.buttons_panel
        #ボタン構築
        self.setButton("+")
        self.setButton("-")
        
        #サイザーにセット
        sizer = wx.GridSizer(2, len(config["target"]), 0, 0)
        for i,v in enumerate(self.button):
            sizer.Add(v, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL)
            
        panel.SetSizer(sizer)
        
    """
    ボタンセット
    """
    def setButton(self, str):
        config = context.Config
        panel = context.UI.buttons_panel
        
        for v in config["target"]:
            b = wx.Button(panel, -1, util.encode(v["name"])+str)
            #イベント
            ev = event.Counter(self.count,str,v)
            b.Bind(wx.EVT_BUTTON,ev.calc)
            
            try:
                b.SetMinSize((config["config"]["buttonWidth"], -1))
            except Exception:
                b.SetMinSize((100, -1))
            
            self.button.append(b)
            
        
    
        

           